package com.itwlj.service;

import com.itwlj.dto.SkuDTO;
import com.itwlj.vo.SkuVO;

import java.util.List;

public interface SkuService {

    /**
     * 新增sku
     *
     * @param skuDTO
     */
    void insert(SkuDTO skuDTO);

    /**
     * 根据商品id查询sku
     *
     * @param goodsId
     * @return
     */
    List<SkuVO> getByGoodsId(Long goodsId);

    /**
     * 根据id删除sku
     *
     * @param id
     */
    void deleteById(Long id);

    /**
     * 根据id修改sku
     *
     * @param skuDTO
     */
    void update(SkuDTO skuDTO);

    /**
     * 根据id查询sku
     *
     * @param id
     * @return
     */
    SkuVO getById(Long id);

    /**
     * 扣减库存
     *
     * @param id
     * @param count
     * @return
     */
    void deductInventory(Long id, Long count);

    /**
     * 扣减库存
     *
     * @param id
     * @param count
     * @return
     */
    void backInventory(Long id, Long count);
}
